Energy-Based Control Of A Switching Regulator

ABSTRACT

A system and method are provided for controlling a switching voltage regulator circuit. An energy difference between a stored energy of a switching voltage regulator and a target energy is determined. A control variable of the switching voltage regulator is computed based on the energy difference and the control variable is applied to a current control mechanism of the switching voltage regulator. In one embodiment, the control variable is pulse width of a control signal.

FIELD OF THE INVENTION

The present invention relates to regulator circuits, and morespecifically to controlling switching regulator circuits.

BACKGROUND

Conventional devices such as microprocessors and graphics processorsthat are used in high-performance digital systems may have varyingcurrent demands based on the processing workload. For example, currentdemands may increase dramatically when a block of logic is restartedafter a stall or when a new request initiates a large computation suchas the generation of a new image. Conversely, current demands maydecrease dramatically when a block of logic becomes idle. When thecurrent demand increases and sufficient power or energy is notavailable, the supply voltage that is provided to the device may dropbelow a critical voltage level, potentially causing the device to failto function properly. When the current demand decreases and the supplyvoltage that is provided to the device rises above a critical voltagelevel, circuits within the device may fail to function properly and mayeven be destroyed.

A conventional switching regulator is an electric power conversiondevice that interfaces between a power supply and a device, providingcurrent to the device and responding to changes in current demands tomaintain a supply voltage level. Conventional voltage regulators usedfor central processing units (CPUs) and graphics processing units (GPUs)convert 12 Volts to approximately 1 Volt using a “buck” converter.Switches of the buck converter are typically controlled withproportional integral derivative (PID) technique to modulate a pulsewidth during which a high-side switch is coupled to the 12 Volt powersupply to provide current to the device. While a conventional buckconverter is simple to operate and requires only a few components (i.e.,two switches, a filter capacitor, and an inductor), a conventional buckconverter controlled using the PID technique may take longer thandesired to respond to current demand transients of the device, resultingin a drop in supply voltage, so that the supply voltage that is providedto the device may drops below the critical voltage level.

FIG. 1 illustrates voltage and current waveforms 100 showing aconventional buck converter controlled using the PID technique, inaccordance with the prior art. A first waveform corresponds to thecurrent i_(L) in the inductor of the converter. A second waveformcorresponds to the voltage v_(C) at the filter capacitor. A thirdwaveform corresponds to the width of the pulse t_(a) during which thehigh-side switch is enabled. A PID controller responds to load currenttransients of +5 Amps at 100 μs and −3 Amps at 400 μs by increasing ordecreasing t_(a), respectively. As FIG. 1 shows, the PID controllertakes about five 10 μs cycles to pump up current in the inductor andthen additional cycles are required to raise the voltage v_(C) on thefilter capacitor. The peak drop of v_(C) is 90 mV 30 μs after thetransient. The response time of the PID controller should be reduced tobetter regulate the voltage level v_(C).

Thus, there is a need for improving regulation of voltage levels and/orother issues associated with the prior art.

SUMMARY

A system and method are provided for controlling a switching voltageregulator circuit. An energy difference between a stored energy of aswitching voltage regulator and a target energy is determined. A controlvariable of the switching voltage regulator is computed based on theenergy difference and the control variable is applied to a currentcontrol mechanism of the switching voltage regulator. In one embodiment,the control variable is pulse width of a control signal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates voltage and current waveforms showing a conventionalbuck converter controlled using the PID technique, in accordance withthe prior art;

FIG. 2A illustrates a flowchart of a method for energy-based control ofa switched regulator, in accordance with one embodiment;

FIG. 2B illustrates a electric power conversion system including anelectric power conversion device implemented using an energy-basedcontrolled switching regulator, in accordance with one embodiment;

FIG. 2C illustrates a model of the capacitor that may be used toestimate the instantaneous excess current, in accordance with oneembodiment;

FIG. 2D illustrates voltage and current waveforms showing energy-basedcontrol of the switching regulator shown in FIG. 2B, in accordance withone embodiment;

FIG. 3A illustrates the energy-based control unit shown in FIG. 2B, inaccordance with one embodiment;

FIG. 3B illustrates the energy difference unit shown in FIG. 3A, inaccordance with one embodiment;

FIG. 3C illustrates the energy difference unit and duty factor unitshown in FIG. 3A, in accordance with another embodiment;

FIG. 3D illustrates the energy difference unit and duty factor unitshown in FIG. 3A, in accordance with another embodiment;

FIG. 3E illustrates a flowchart of another method for energy-basedcontrol of a switched regulator, in accordance with one embodiment;

FIG. 3F illustrates voltage and current waveforms showing energy-basedcontrol of the switching regulator shown in FIG. 2B using the methodshown in FIG. 3C, in accordance with one embodiment;

FIG. 4 illustrates a multi-phase switching regulator that includes amulti-phase control unit and switching regulators, in accordance withone embodiment;

FIG. 5 illustrates a diagram of the energy-based controlled switchingregulator within a system, according to one embodiment; and

FIG. 6 illustrates an exemplary system in which the various architectureand/or functionality of the various previous embodiments may beimplemented.

DETAILED DESCRIPTION

An alternate energy-based strategy may be used for controlling aswitching voltage regulator circuit and regulate a voltage levelprovided to a device. A pulse width of a high-side switch may becalculated to produce a total energy that is stored in the switchingvoltage regulator circuit. The pulse width is calculated to maintain atarget energy that corresponds to a target voltage level to be providedto the device. When the voltage provided to the device drops below acritical level the controller adjusts the pulse width so that thevoltage may be corrected in a single control cycle. The controller neednot wait for the next control cycle to adjust the pulse with, but mayincrease the length of or initiate the next pulse immediately based onthe amount of voltage drop. Therefore, the response time of theswitching voltage regulator circuit is reduced and significant voltagedrop is avoided.

FIG. 2A illustrates a flowchart of a method for energy-based control ofa switched regulator, in accordance with one embodiment. At step 205, anenergy difference between a stored energy of a switching voltageregulator and a target energy is determined. In one embodiment, thetarget energy corresponds to a target voltage level that is provided bythe switching voltage regulator to a load. At step 210, a controlvariable of the switching voltage regulator is computed based on theenergy difference. At step 215, the control variable is applied to acurrent control mechanism of the switching voltage regulator. In oneembodiment, the control variable is a pulse width of a control signal,and the pulse width is applied to a high-side switch of the currentcontrol mechanism.

More illustrative information will now be set forth regarding variousoptional architectures and features with which the foregoing frameworkmay or may not be implemented, per the desires of the user. It should bestrongly noted that the following information is set forth forillustrative purposes and should not be construed as limiting in anymanner. Any of the following features may be optionally incorporatedwith or without the exclusion of other features described.

FIG. 2B illustrates an electric power conversion system 230 including anelectric power conversion device 220 that is implemented as anenergy-based controlled switching regulator 222, in accordance with oneembodiment. The electric power conversion device 220 is configured toprovide a desired output voltage level (v_(s)) at the load 230 byconverting power received from an electric power source 228 (e.g., 12V).The configuration of the electric power source 228, the energy-basedcontrol unit 225, the switching devices M1 and M2, and the inductor Lshown in FIG. 2B is typically referred to as a “buck” regulator (orconverter).

The switching regulator 222 includes a current control mechanism (i.e.,switching mechanisms M1 and M2). The current control mechanism iscoupled to the electric power source 228 and the energy-based controlunit 225 and is operable to control the current i_(L) flowing throughthe inductor L. The arrow indicates the flow of current i_(L) in thepositive direction from an upstream end of the inductor L to adownstream end of the inductor L. For example, as illustrated, thecurrent control mechanism may include one or more first switchingmechanisms M1 and one or more second switching mechanisms M2. Theswitching mechanisms M1 and M2 may each include, for example, N-typepower MOSFETs (metal oxide semiconductor field-effect transistor),and/or other switching mechanisms. In one embodiment, the switchingmechanism M1 is a P-type power MOSFET. Although single switchingmechanisms M1 and M2 are illustrated for the ease of understanding, itwill be appreciated that a plurality of switching mechanisms M1 and M2may be connected in parallel to increase current capacity, decreaseconduction losses, and the like. In one embodiment, multiple switchingregulators 222 may be configured to share a common capacitor, with eachswitching regulator 222 corresponding to one phase of a multi-phaseelectric power conversion system, as described in further detail inconjunction with FIG. 4.

The energy-based control unit 225 is configured to apply one or morecontrol signals to the switching mechanisms M1 and M2. For example, theenergy-based control unit 225 may be configured to generate pulse widthmodulation (PWM) signals or pulse frequency modulation (PFM) signals, acombination of PWM and PFM, and/or different control signals toselectively enable the switching mechanisms M1 and M2 according to aduty factor having a corresponding pulse width. In one embodiment, theenergy-based control unit 225 is configured to generate control signalsto selectively enable the switching mechanisms M1 and M2 with a pulsewidth that is based on a calculated energy difference. Regardless of thespecific configuration, the energy-based control unit 225 is configuredto provide control signals such that the switching mechanisms M1 and M2are not concurrently enabled (i.e., turned on). In other words, only oneof switching mechanism M1 and M2 is enabled at a time. Enablingswitching mechanisms M1 and M2 concurrently provides a direct pathbetween the supply of electric power source 228 and ground, therebypotentially damaging the electric power conversion device 220 and/or theload 230 and/or resulting in undesirable high power usage.

The energy-based control unit 225 may be configured to operate thecurrent control mechanism so that each control cycle an amount of energyneeded to maintain a target voltage at v_(c) is stored in the inductori_(L) and the capacitor C. When the current demand at the load 230changes (i.e., not steady-state operation), the switching mechanisms M1and M2 may be controlled to quickly respond to the change in currentdemand by increasing or decreasing the amount of the current i_(L) thatis provided to L. When a multi-phase switching regulator is implemented,where each buck regulator including an energy-based control unit 225corresponds to one of the phases, one or more phases may be enabled ordisabled as the output voltage v_(c) at the load 230 changes.

At any point in time the energy stored in the switching regulator 222,E_(R), is given by

E _(R)½(i _(x) ² L+v _(C) ² C),   (1)

where i_(x)=i_(L)−i_(Load) is the excess inductor current and v_(C) isthe voltage across capacitor C. At the target state, target outputvoltage V_(T) and zero excess current (i_(x)=0), the target energy is

E _(T)=½(V _(T) ² C)   (2)

The energy deficit, the required change in energy needed to reach to thetarget energy, E_(T), is

ΔE=E _(T) −E _(R).   (3)

The energy-based control unit 225 calculates a pulse width needed tocorrect the energy deficit ΔE and corrects the energy deficit in asingle pulse. For a pulse of width t_(p) the excess current at the endof the pulse, I_(xp), is

$\begin{matrix}{I_{xP} = {I_{x\; 0} + {\frac{\left( {V_{S} - v_{C}} \right)t_{P}}{L}.}}} & (4)\end{matrix}$

The change in energy over the width of the pulse is computed byintegrating the power out of the electric power source 228 during thepulse width, where L_(x0) is the excess current at the start of thepulse.

$\begin{matrix}{{\Delta \; E} = {t_{P}{{V_{S}\left( {I_{x\; 0} + \frac{I_{xP} - I_{x\; 0}}{2}} \right)}.}}} & (5)\end{matrix}$

Substituting equation (4) into equation (5) for I_(xP) and replacingt_(P) with t_(C)D, where t_(C) is the period of the control cycle and Dis the duty factor of the control signal that enables and disables thehigh-side switch M1, gives:

$\begin{matrix}{{\Delta \; E} = {t_{C}{{{DV}_{S}\left( {I_{x\; 0} + \frac{\left( {V_{S} - v_{C}} \right)t_{C}D}{2\; L}} \right)}.}}} & (6)\end{matrix}$

Equation (5) is then expressed in a different form as

$\begin{matrix}{{\Delta \; E} = {{\left( {t_{C}V_{S}I_{x\; 0}} \right)D} + {\left( \frac{{V_{S}\left( {V_{S} - v_{C}} \right)}t_{C}^{2}}{2\; L} \right)D^{2}}}} & (7)\end{matrix}$

For a specific ΔE the resulting quadratic equation:

$\begin{matrix}{{{{\left( \frac{{V_{S}\left( {V_{S} - v_{C}} \right)}t_{C}^{2}}{2\; L} \right)D^{2}} + {\left( {t_{C}V_{S}I_{x\; 0}} \right)D} + \left( {{- \Delta}\; E} \right)} = 0},} & (8)\end{matrix}$

can be solved for the required duty factor D. The input values that areused to solve the quadratic equation include ΔE, I_(x0), and v_(C).I_(x0) is the excess current at the beginning of the operating cyclethat may be estimated by sampling i_(x), the instantaneous excessinductor current. The current i_(x) may be provided by a current sensor.Alternatively, i_(x) may be estimated using the sensed voltage, v_(C)and computing the derivative of v_(C).

FIG. 2C illustrates a model of the capacitor of FIG. 2B that may be usedto estimate the instantaneous excess current, in accordance with oneembodiment. As shown in FIG. 2C, v_(C)=v_(Cap)+R_(Cap)i_(x), R_(Cap) isthe equivalent series resistance (ESR) of the capacitor C and v_(Cap) isthe voltage across the capacitor C when the resistance is modeled asbeing coupled between the capacitor C and the downstream terminal of theinductor L that is at voltage v_(C). When an estimate of i_(x), isdetermined, v_(Cap)=v_(c)−R_(Cap)i_(x) may be used in place of v_(c) tosolve equation (8).

The calculated duty factor is then limited to fall in the range [0^(D)_(max □)] where D_(max)<1 is the maximum duty factor. When the value ofD is not limited, the energy deficiency may be corrected by a singlepulse of width t_(p). In one embodiment, the energy-based control unit225 enables the switching device M1 during the pulse of width t_(p). Thewidth of the pulse t_(p) that enables the pull-up switching mechanismdetermines the current i_(L) delivered to the load 230.

FIG. 2D illustrates voltage and current waveforms 150 showingenergy-based control of the switching regulator 222 shown in FIG. 2B, inaccordance with one embodiment. A first waveform corresponds to thecurrent i_(L) at the load 230. A second waveform corresponds to thevoltage v_(C) across the filter capacitor C. A third waveformcorresponds to the width of the pulse t_(p) during which the high-sideswitching mechanism M1 is enabled by the energy-based control unit 225.The energy-based control unit 225 responds to current transients oni_(L) of +5 Amps at 100 μs and −3 Amps at 400 μs by increasing ordecreasing t_(p), respectively. As FIG. 2D shows, the energy-basedcontrol unit 225 generates signals that control the current controlmechanism to correct an energy deficit in a single control cycle. Thepeak drop is reduced from 90 mV to 14 mV compared with the prior artcontroller described in conjunction with FIG. 1. However, because theenergy-based control unit 225 is regulating total energy rather than thevoltage v_(C), the current ripple and voltage ripple may be higher thanwhen a PID control technique is used.

FIG. 3A illustrates the energy-based control unit 225 shown in FIG. 2B,in accordance with one embodiment. The energy-based control unit 225includes a control cycle unit 310, an RS flip-flop 315, and a pulsewidth computation unit 325. The control cycle unit 310 generates a setsignal that is configured to set the RS flip-flop 315 and a reset signalthat is configured to reset the RS flip-flop 315. The RS flip-flop 315asserts the pull-up enable signal when the set signal transitions highand the pull-up enable signal remains high until the reset signaltransitions high. In one embodiment, the pull-down enable signal is aninverted version of the pull-up enable signal with dead time added toensure that the switching mechanisms M1 and M2 are not simultaneouslyenabled after accounting for asymmetric turn-on and turn-off delays ofthe power MOSFETs. The pull-up enable signal may be coupled to the M1switching mechanism and the pull-down signal may be coupled to the M2switching mechanism.

The pulse width computation unit 325 is configured to control the dutyfactor of the control cycle by resetting the RS flip-flop 315 to producea positive pulse width of t_(p) for the pull-up enable and a negativepulse width of t_(p) for the pull-down enable. The pulse widthcomputation unit 325 includes a duty-factor unit 320 and an energydifference unit 330. In one embodiment, the energy difference unit 330receives the voltage v_(c) and determines the energy difference based ona difference between v_(c) and the target voltage V_(T). To determinethe energy in the inductor L, the energy difference unit 330 alsoreceives either the measured current i_(x) or estimates the currenti_(x) from other variables. For example it may estimate i_(x) fromdv_(c)/dt, the rate of change (or the derivative) of v_(C). Theduty-factor unit 320 computes the duty factor D based on ΔE or one ormore signals representing ΔE.

When C is large, capacitive energy dominates total energy, and the totalenergy may be estimated from just the capacitive energy 0.5 Cv_(c) ². Inthese cases the duty factor can be computed directly from capacitorvoltage v_(Cap). However, when inductive energy has values comparable tothe capacitive energy, the calculation of energy deficit should includea term based in i_(x), which can either be sensed directly or estimatedfrom other variables, for example from the derivative of v_(c).

FIG. 3B illustrates the energy difference unit 330 shown in FIG. 3A, inaccordance with one embodiment. The energy difference unit 330 includesa bank of comparators that each receives a value corresponding to thestored energy in the switching voltage regulator 222 as an input. In oneembodiment, the value is the output voltage, v_(c). Each comparatortriggers at a particular energy value corresponding to a pre-determinedlevel (i.e., voltage levels V0, V1, V2, and V3) and the lowestpre-determined level, V0 may correspond to a minimum threshold energydifference E_(th). ΔE may be estimated as the square of a voltagedifference scaled by a constant. However, in the embodiment shown inFIG. 3B, the differences in voltage that are output by the bank ofcomparators are used instead of computing ΔE. A pre-defined duty factoris associated with each of the comparator outputs. The pre-determinedlevels may increase from V0 to V3 linearly or non-linearly (e.g.,logarithmically or quadratically). For example, the pre-determinedlevels may be related to the solution of the quadratic equation (8) atenergy levels corresponding to different values of v_(c) assumingtypical values of i_(x). The greatest energy difference is indicated bythe greatest difference between v_(c) and a pre-determined voltagelevel.

The duty-factor unit 320 includes a combiner unit 335 that receives thecomparator outputs from the energy difference unit 330, identifies thetriggered output corresponding to the greatest energy difference, andgenerates a duty factor D. The duty factor corresponds to ΔE, andcontrols the pulse width during which the pull-up enable signal isasserted at the next control cycle. The control cycle unit 310 receivesthe duty factor and asserts the reset signal after the set signal isasserted to generate a pulse on the pull-up enable signal thatsubstantially equals the pulse width. In one embodiment, the pulse widthcomputation unit 325 may be configured to immediately apply the pulse byasserting the set signal before the next control cycle when ΔE>E_(high),to minimize the response time of the energy-based control unit 225. Thenow signal that is output by the combiner unit 335 indicates that thepulse width should be applied immediately rather than waiting for thenext control cycle.

In one embodiment, the duty-factor unit 320 may also be configured toincrease the pulse width to provide voltage overshoot to reduce theresponse time of the switching regulator 222 and reduce voltage drop atthe load 230. Solving the quadratic equation (8) gives a duty factor Dthat will correct a voltage drop with minimum delay and no voltageovershoot. In other words, only the energy difference needed to adjustv_(c) to the target voltage V_(T) will be provided by the switchingregulator 222. When some overshoot of v_(c) may be tolerated at the load230, the correction of v_(c) may be performed faster. In one embodiment,the duty factor may be computed to perform correction with overshootwhen the energy difference exceeds an overshoot threshold E_(TO) (i.e.,when ΔE>E_(TO)). When correction is performed with overshoot, the energydifference ΔE is replaced with an inflated energy deficit ΔE₀=ΔE+E_(C),where E_(C) is the energy associated with an overshoot voltage V_(O)that can be tolerated.

$E_{O} = {\frac{C}{2}\left( {V_{O}^{2} - V_{T}^{2}} \right)}$

When the duty factor unit 320 computes the duty factor for a highervoltage, the inductor current i_(L) ramps to a higher value before thereset signal to the RS flip-flop 315 is asserted to disable the pull-upsignal (i.e., disable the high-side switching mechanism M1). With thehigher current, the output capacitor slews more quickly to correct thevoltage drop.

Finally, to avoid overstress on the MOSFETs M1 and M2 and inductor L,the duty factor may be limited to prevent the current i_(L) fromexceeding a maximum current limit value I_(max □). A maximum dutyfactor, D_(max) may be computed as

$D_{\max \; \bullet} = {\frac{\left( {I_{\max} - i_{x}} \right)L}{\left( {V_{S} - v_{c}} \right)}.}$

The duty factor unit 320 may be configured to limit D to be less thanD_(max).

In one embodiment, the duty-factor unit 320 may also be configured toincrease the pulse width to compensate for circuit loss of the switchingregulator 222. To compensate for switching losses of x percent, thecomputed ΔE is multiplied by 1/(1-x), so that the duty factor unit 320computes the duty factor needed to adjust the energy when switchinglosses are incurred.

Returning to FIG. 3B, when none of the comparators are triggered, theenergy difference unit 330 may output a value of D indicating thatΔE≦E_(th). In one embodiment, when ΔE≦E_(th) the pulse width computationunit 325 may be configured to operate as a PID controller to minimizeripple of v_(c). While energy-based control is very effective atresponding to current transients significantly faster than a PIDcontroller, the energy-based control can result in more voltage andcurrent ripple during steady state conditions compared with PID controlschemes. When the energy-based control unit 225 is configured tofunction as a PID controller during steady state conditions, a lowsteady-state ripple of v_(c) is achieved while also having a fastresponse to transients that is characteristic of the energy-basedcontrol technique. However, when switching between the energy-basedcontrol and the PID control, care must be used to avoid integral wind-upin the PID control circuitry. In one embodiment, energy-based controlunit 225 is configured to use energy-based control when the energydifference is larger than 100 and otherwise use a conventional controlscheme, such as PID.

Although the pulse width computation unit 325 has been described inconjunction with FIG. 3B as being implemented using comparators, otherimplementations are possible. For example, the energy difference unit330 shown in FIG. 3B may receive the computed stored energy E_(R) inplace of V_(C) and compare the stored energy to different pre-determinedenergy values instead of pre-determined voltage values.

FIG. 3C illustrates the energy difference unit 330 shown in FIG. 3A, inaccordance with another embodiment. As shown in FIG. 3C, the energydifference unit 330 includes a current estimator 305 and an energyestimator 308. The current estimator 305 receives the output voltage,v_(c) and computes an estimate of the instantaneous current i_(x).Alternatively, i_(x) may be sensed and received as an input to theenergy estimator 308. The current estimator 305 outputs theinstantaneous current i_(x) and the computed v_(Cap) value to the energyestimator 308. The energy estimator 308 may be configured to solveequation (8) to compute ΔE, using in place of v_(c).

The energy difference unit 330 includes a bank of comparators that eachreceives ΔE as an input. Each comparator triggers at a particular energyvalue corresponding to a pre-determined level (i.e., energy differencelevels ΔE0, ΔE1, ΔE2, and ΔE3) and the lowest pre-determined level, ΔE0may correspond to a minimum threshold energy difference E_(th). ΔE maybe estimated as the square of a voltage difference scaled by a constant.A pre-defined duty factor, D, is associated with each of the comparatoroutputs. The pre-determined levels may increase from ΔE0 to ΔE3 linearlyor non-linearly (e.g., logarithmically). For example, the pre-determinedlevels may be related to the solution of the quadratic equation (8) atenergy levels. The greatest energy difference is indicated by thegreatest difference between ΔE and a pre-determined energy differencelevel.

The duty-factor unit 320 includes a combiner unit 338 that receives thecomparator outputs from the energy difference unit 330, identifies thetriggered output corresponding to the greatest energy difference, andgenerates a duty factor D, as previously described in conjunction withFIG. 3B. The now signal that is output by the combiner unit 335indicates that the pulse width should be applied immediately rather thanwaiting for the next control cycle. The duty factor unit 320 may also beconfigured to implement overshoot and/or to account for losses.

FIG. 3D illustrates the energy difference unit 330 shown in FIG. 3A, inaccordance with another embodiment. As shown in FIG. 3D, the pulse widthcomputation unit 325 is implemented using an analog to digital (A/D)converter 318. The A/D converter is configured to sample the voltageV_(C) once per sample period (which should be at least as fast as thecontrol cycle) and output the sampled voltage as a digital value. Adigital energy estimator 322 may be implemented as fixed function logiccircuitry or a digital signal processor (DSP) that is configured tocompute energy difference based on the sampled voltage and either themeasured current i_(x) or the derivative of the sampled voltage toestimate i_(x). The derivative of i_(x) may be estimated from thedifference in i_(x) over one or more sample periods. In one embodiment,the digital energy estimator 322 determines a representation of theenergy difference based on a difference between v, and the targetvoltage V_(T). In another embodiment the digital energy estimatorcomputes the energy difference from equations (1-3), using both i_(x)and v_(c). The duty-factor unit 320 computes the duty factor D based onΔE or one or more signals representing ΔE.

In one embodiment, if the energy difference exceeds a threshold (i.e.,E_(th)), the duty-factor unit 320 solves the quadratic equation (8) tocompute the pulse width and corresponding duty factor. In oneembodiment, the A/D converter is implemented with 10 bits of precisionand the calculation of duty factor is carried out to 10 bits ofprecision. The DSP may also be configured to implement overshoot, toaccount for losses, and to apply the pulse width immediately or to applythe pulse width at the next control cycle.

The computation of the pulse width and corresponding duty factor may besimplified further by pre-computing the duty factor response for severalpre-determined voltage or energy values. For example, duty factors maybe stored in a lookup table for each of 64 evenly spaced A/Dpre-determined voltage or energy values. Linear or some otherinterpolation may be employed to compute a duty factor between any twoduty factors read from the lookup table, where the two duty factorscorrespond to the two pre-determined voltage values closest to thesampled voltage value or the two pre-determined energy values closest toan energy value computed using the sampled voltage value. For example,high bits of the sampled voltage value may be used to read the two dutyfactors from the lookup table and low bits of the sampled voltage valuemay be used to interpolate between the two duty factors that are readfrom the table.

FIG. 3E illustrates a flowchart of another method 340 for energy-basedcontrol of a switched regulator, in accordance with one embodiment.Although the method 340 is described in the context of the energy-basedcontrol unit 225, the method 340 may also be performed by customcircuitry or by a combination of custom circuitry and a program. At step345, the energy-based control unit 225 determines an energy differencebetween a stored energy of a switching voltage regulator and a targetenergy. At step 355, the energy-based control unit 225 determines if theenergy difference is greater than a minimum threshold energy difference,and, if not, at step 370 the energy-based control unit 225 controls theswitching mechanisms using a PID technique and terminates.

Otherwise, at step 360, the energy-based control unit 225 computes apulse width of a control signal based on the energy difference. At step362, the energy-based control unit 225 determines if the energydifference is greater than a high threshold energy difference, and, ifso, at step 375 the energy-based control unit 225 immediately appliesthe control signal to the current control mechanism of the switchingvoltage regulator 222 without waiting for the start of the next controlcycle. Otherwise, at step 365, the energy-based control unit 225 appliesthe control signal to the current control mechanism of the switchingvoltage regulator 222 at the next control cycle.

FIG. 3F illustrates voltage and current waveforms 380 showingenergy-based control of the switching regulator 222 shown in FIG. 2Busing the method shown in FIG. 3C, in accordance with one embodiment. Afirst waveform corresponds to the current i_(L) at the load 230. Asecond waveform corresponds to the voltage v_(c) at the filter capacitorC. A third waveform corresponds to the width of the pulse t_(a) duringwhich the high-side switching mechanism M1 is enabled by theenergy-based control unit 225. The energy-based control unit 225responds to current transients on i_(L) of +5 Amps at 100 μs and −3 Ampsat 400 μs by increasing t_(a). When the energy difference exceeds a highthreshold energy difference, E_(high), the pulse width may be appliedimmediately rather than waiting for the start of the next control cycle.As FIG. 3F shows, the energy-based control unit 225 generates signalsthat control the current control mechanism to correct an energy deficitin a single control cycle when the energy difference exceeds a minimumthreshold energy difference, E_(th). Otherwise, the energy-based controlunit 225 generates signals according to a PID technique to maintain alow ripple in v_(C). The energy-based control unit 225 used to generatethe waveforms 380 is configured with E_(th)=10 μJ.

FIG. 4 illustrates a multi-phase switching regulator 400 that includes amulti-phase control unit 425 and switching regulators 222, in accordancewith one embodiment. Each of the switching regulators 222 is one phaseof an eight-phase switching regulator. In one embodiment, each switchingregulator 222 is configured to provide a desired output voltage level(V_(L)) at the load 410 by converting power received from an electricpower source 228 for one phase of the eight phases. A single controller,shown as the multi-phase control unit 425, may be used to control eachof the switching regulators 222. The multi-phase control unit 425 isconfigured to receive information from the energy-based control unit 225within each switching regulator 222 and to configure each switchingregulator 222 to generate the total energy that is provided to the load410. In another embodiment, the functionality of the dedicatedenergy-based control unit 225 within each switching regulator 222 isincorporated into the multi-phase control unit 425.

A single filter capacitor C1, or parallel combination of filtercapacitors, may be shared by the different electric power conversiondevices 228 rather than including a filter capacitor C1 in each of theswitching regulator 222. Additionally, one or more of switchingregulators 222 may be replaced with a conventional regulator circuit.

At any point in time, the multi-phase control unit 425 has a targetvoltage V_(T) that needs to be delivered to the load 410. The differentphases (i.e., switching regulators 222) of the multi-phase switchingregulator 400 are configured to generate a total energy to maintainV_(C) at V_(T). With the total energy being delivered in a singlecontrol cycle. One or more of the switching mechanisms within each phaseis configured to generate at least a portion of the total energy. Torespond with minimum delay, for small energy deficits, the pulse widthof the next phase to switch is adjusted to completely correct the energydeficit. At larger deficits, larger than can be corrected by one phasewithout exceeding a current limit, the pulse width of the next one ormore phases to switch are adjusted. For even larger deficits one or morephases are switched on immediately—out of their normal sequence. For thelargest deficits, when an energy transient exceeds the high thresholdE_(high), the pull-up enables of all phases may be simultaneouslyasserted.

FIG. 5 illustrates a system 500 including an electric power conversiondevice 220 implemented using an energy-based switching regulator 222,according to one embodiment. In another embodiment, the electric powerconversion device 220 is replaced with the multi-phase energy-basedswitching regulator 400. The inductor is coupled to the filter capacitorC1. The filter capacitor C1 may be implemented as a parallel combinationof filter capacitors where a large capacitor is used outside of thepackage 570 (i.e., on a printed circuit board) and a smaller capacitoris used within the package 570 and/or on the die 575. The pulse widthand corresponding duty factor of the energy-based switching regulator222 is adjusted as needed to regulate the voltage level at the load,i.e., circuit 580.

FIG. 6 illustrates an exemplary system 600 in which the variousarchitecture and/or functionality of the various previous embodimentsmay be implemented. As shown, a system 600 is provided including atleast one central processor 601 that is connected to a communication bus602. The communication bus 602 may be implemented using any suitableprotocol, such as PCI (Peripheral Component Interconnect), PCI-Express,AGP (Accelerated Graphics Port), HyperTransport, or any other bus orpoint-to-point communication protocol(s). The system 600 also includes amain memory 604. Control logic (software) and data are stored in themain memory 604 which may take the form of random access memory (RAM).

The system 600 also includes input devices 612, a graphics processor606, and a display 608, i.e. a conventional CRT (cathode ray tube), LCD(liquid crystal display), LED (light emitting diode), plasma display orthe like. User input may be received from the input devices 612, e.g.,keyboard, mouse, touchpad, microphone, and the like. In one embodiment,the graphics processor 606 may include a plurality of shader modules, arasterization module, etc. Each of the foregoing modules may even besituated on a single semiconductor platform to form a graphicsprocessing unit (GPU).

In the present description, a single semiconductor platform may refer toa sole unitary semiconductor-based integrated circuit or chip. It shouldbe noted that the term single semiconductor platform may also refer tomulti-chip modules with increased connectivity which simulate on-chipoperation, and make substantial improvements over utilizing aconventional central processing unit (CPU) and bus implementation. Ofcourse, the various modules may also be situated separately or invarious combinations of semiconductor platforms per the desires of theuser. One or more of the systems 500 shown in FIG. 5, may beincorporated in the system 600 to provide power to one or more of thechips.

The system 600 may also include a secondary storage 610. The secondarystorage 610 includes, for example, a hard disk drive and/or a removablestorage drive, representing a floppy disk drive, a magnetic tape drive,a compact disk drive, digital versatile disk (DVD) drive, recordingdevice, universal serial bus (USB) flash memory. The removable storagedrive reads from and/or writes to a removable storage unit in awell-known manner. Computer programs, or computer control logicalgorithms, may be stored in the main memory 604 and/or the secondarystorage 610. Such computer programs, when executed, enable the system600 to perform various functions. The main memory 604, the storage 610,and/or any other storage are possible examples of computer-readablemedia.

In one embodiment, the architecture and/or functionality of the variousprevious figures may be implemented in the context of the centralprocessor 601, the graphics processor 606, an integrated circuit (notshown) that is capable of at least a portion of the capabilities of boththe central processor 601 and the graphics processor 606, a chipset(i.e., a group of integrated circuits designed to work and sold as aunit for performing related functions, etc.), and/or any otherintegrated circuit for that matter.

Still yet, the architecture and/or functionality of the various previousfigures may be implemented in the context of a general computer system,a circuit board system, a game console system dedicated forentertainment purposes, an application-specific system, and/or any otherdesired system. For example, the system 600 may take the form of adesktop computer, laptop computer, server, workstation, game consoles,embedded system, and/or any other type of logic. Still yet, the system600 may take the form of various other devices including, but notlimited to a personal digital assistant (PDA) device, a mobile phonedevice, a television, etc.

Further, while not shown, the system 600 may be coupled to a network(e.g., a telecommunications network, local area network (LAN), wirelessnetwork, wide area network (WAN) such as the Internet, peer-to-peernetwork, cable network, or the like) for communication purposes.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. Thus, the breadth and scope of a preferred embodiment shouldnot be limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

What is claimed is:
 1. A method, comprising: determining an energydifference between a stored energy of a switching voltage regulator anda target energy; computing a control variable of the switching voltageregulator based on the energy difference; and applying the controlvariable to a current control mechanism of the switching voltageregulator.
 2. The method of claim 1, wherein the control variable is apulse width of a control signal.
 3. The method of claim 1, wherein thecontrol variable enables a pull-up switching mechanism in the currentcontrol mechanism that is coupled between an upstream end of an inductorand an electric power source.
 4. The method of claim 1, wherein thecontrol variable is applied immediately after determining that theenergy difference exceeds a high threshold energy difference.
 5. Themethod of claim 1, wherein the control variable is applied at a nextcontrol cycle after determining that the energy difference does notexceed a high threshold energy difference.
 6. The method of claim 1,further comprising determining that the energy difference exceeds aminimum energy threshold.
 7. The method of claim 2, further comprisingincreasing the pulse width to compensate for circuit loss of theswitching voltage regulator.
 8. The method of claim 2, furthercomprising increasing the pulse width to provide voltage overshoot. 9.The method of claim 1, wherein the control variable is computed based ona maximum current limit.
 10. The method of claim 1, wherein computingthe control variable comprises solving a quadratic equation using theenergy difference as an input.
 11. The method of claim 10, furthercomprising sensing current and using the sensed current as an input tothe quadratic equation.
 12. The method of claim 10, further comprisingestimating current based on a sensed voltage and using the estimatedcurrent as an input to the quadratic equation.
 13. The method of claim1, wherein computing the control variable comprises interpolatingbetween two values.
 14. The method of claim 1, wherein determining theenergy difference comprises comparing a value corresponding to thestored energy to a set of pre-determined levels.
 15. The method of claim14, wherein the value is determined by combining one or more of anoutput voltage, a derivative of the output voltage, and a sensedcurrent.
 16. The method of claim 1, wherein determining the energydifference comprises converting an output voltage to a digital value.17. The method of claim 1, wherein the switching voltage regulatorcorresponds to a first phase of a multi-phase switching voltageregulator, and further comprising applying the control variable to asecond current control mechanism of a second switching voltage regulatorthat is configured as a second phase of the multi-phase switchingvoltage regulator.
 18. A switching voltage regulator circuit,comprising: a pull-up switching mechanism; a pull-down switchingmechanism that is coupled to the pull-up switching mechanism; aninductor having an upstream end that is coupled between the pull-upswitching mechanism and the pull-down switching mechanism; a capacitorthat is coupled to the downstream end of the inductor; and anenergy-based control circuit that is coupled to the pull-up switchingmechanism and configured to: determine an energy difference between astored energy of the switching voltage regulator and a target energy;compute a control variable based on the energy difference; and apply thecontrol variable to the pull-up switching mechanism.
 19. The switchingvoltage regulator circuit of claim 18, wherein the control variable is apulse width of a control signal.
 20. The switching voltage regulatorcircuit of claim 18, wherein the control variable enables a pull-upswitching mechanism in the current control mechanism that is coupledbetween an upstream end of an inductor and an electric power source.